var { ReturnModel } = require('../libs/resmodel');
var { authrealnameSave, authrealnameList } = require('../services/authrealname');

/**
* 立即认证
* @api {post} /authrealname/auth 立即认证
* @apiDescription 立即认证
* @apiName save
* @apiParam (参数) {String} pcode *认证用户code
* @apiParam (参数) {String} authtype *认证方式 如：居民身份证、护照
* @apiParam (参数) {String} name *姓名
* @apiParam (参数) {String} idcard *证件号码
* @apiParam (参数) {File} img *正面照片-阿里云文件地址
* @apiParam (参数) {File} img_back 反面照片-阿里云文件地址
* @apiSampleRequest /authrealname/auth
* @apiGroup authrealname-实名认证
* @apiVersion 1.0.0
* @apiParamExample {json} Request-Example:
*     {
*       "pcode": "290464549598", // 认证用户code
*       "authtype": "居民身份证", // 认证方式
*       "name": "张三", //认证用户name
*       "idcard": "420xxxxxxxxxxxxxxx", //证件号码
*       "img": "http://redspider.oss-cn-shenzhen.aliyuncs.com/redspider_v1.0/248161509426_test.jpg", //正面照片-阿里云文件地址
*       "img_back": "http://redspider.oss-cn-shenzhen.aliyuncs.com/redspider_v1.0/248161509426_test.jpg" //反面照片-阿里云文件地址
*     }
* @apiSuccessExample {json} Success-Response:
*   HTTP/1.1 200 OK
*   {
*      "msg": "保存成功",
*      "code": 0
*   }
*/
async function auth(req, res) {
    let result = await authrealnameSave(req.body);
    res.json(new ReturnModel(result));
}
/**
* 获取实名认证列表-后台
* @api {post} /authrealname/list 获取实名认证列表-后台
* @apiDescription 获取实名认证列表-后台
* @apiName list
* @apiParam (参数) {String} ispass 按审批状态筛选，不传查所有（0：未通过， 1：通过 9：未审核）
* @apiParam (参数) {String} name 按名称筛选，不传查所有，同时根据name和nickname模糊查询
* @apiParam (参数) {Number} pagenum 查询第几页(默认第1页)
* @apiParam (参数) {Number} pagesize 每页显示条数(默认10条)
* @apiSampleRequest /authrealname/list
* @apiGroup authrealname-实名认证
* @apiVersion 1.0.0
* @apiParamExample {json} Request-Example:
*     {
*       "ispass": 0, // 查询未通过的
*       "name": "张三", // 查询张三
*       "pagenum": 1,  // 查询第几页
*       "pagesize": 10,  // 每页显示条数
*     }
* @apiSuccessExample {json} Success-Response:
*   HTTP/1.1 200 OK
*   {
*      "data": {
*         list: [{
*       "id": "12", // 记录id
*       "pcode": "290464549598", // 认证用户code
*       "nickname": "会飞的鱼", // 认证用户nickname
*       "name": "张三", //认证用户name
*       "authtype": "人工认证", //认证方式 如：自助认证、人工认证
*       "code": "1231231312321", //证书编号
*       "ispass": 1, // 是否通过，0：未通过， 1：通过 9：未审核
*       "commit": "通过", // 审批意见
*       "createtime": "2022-04-02 15:23:22", // 申请时间
*       "updatetime": "2022-04-02 15:23:22", // 更新时间
*       "audittime": "2022-04-02 15:23:22", // 审批时间
*       }],
*        "total": 200,//总条数
*        "pagecount": 20,//总页数
*        }
*      "msg": "获取成功",
*      "code": 0
*   }
*/
async function list(req, res) {
    let result = await authrealnameList(req.body);
    res.json(new ReturnModel(result));
}

module.exports = function (app) {
    let base_url = '/api/authrealname';

    app.post(base_url+'/auth', auth);
    app.post(base_url+'/list', list);
}
